package com.bridgeintelligent.tag.customer.mapper;

import com.bridgeintelligent.tag.customer.looklike.LookLikeCharacter;
import com.bridgeintelligent.tag.customer.looklike.LookLikeInfo;
import com.bridgeintelligent.tag.customer.looklike.LookLikeOperation;
import com.bridgeintelligent.tag.customer.model.CustomerModel;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;


@Mapper
public interface LookLikeMapper {

    void addLookLike(LookLikeInfo lookLikeInfo);

    String checkName(@Param("lookName")String lookName);

    LookLikeInfo findById(@Param("id")String id);

    void delById(@Param("id")String id,@Param("updateTime")String updateTime);

    void delReal(@Param("id")String id);

    List<LookLikeInfo> findList(@Param("lookName")String lookName,@Param("isAnalysis")String isAnalysis,@Param("stTime")String stTime,@Param("edTime")String edTime,@Param("userId")String userId);

    void updateDataStatus(Map map);

    List<String> expireList(@Param("currentTime") String currentTime);

    List<LookLikeCharacter> findCharacterList(@Param("dimName")String dimName,@Param("lookId")String lookId);

    List<CustomerModel> commonLookCustomerList(@Param("indexId")String indexId,@Param("customerName")String customerName,@Param("userId")String userId,@Param("num")Double num);
    List<CustomerModel> unionAdminLookCustomerList(@Param("indexId")String indexId,@Param("customerName")String customerName,@Param("num")Double num);

    List<CustomerModel> adminLookCustomerList(@Param("indexId") String indexId,@Param("customerName")String customerName,@Param("num")Double num);

    void addOperation(LookLikeOperation operation);

    List<LookLikeOperation> operationList(@Param("lookId")String lookId);


}
